Compilation of a Skeleton-Based Parallel Language Through Symbolic Cost Analysis and Automatic Data Distribution
نویسنده
چکیده
We present a skeleton-based language which leads to portable and cost-predictable implementations on MIMD computers. The compilation process is described as a series of program transformations. We focus in this paper on the step concerning the distribution choice. The problem of automatic mapping of input vectors onto processors is addressed using symbolic cost evaluation. Source language restrictions are crucial since they permit to use powerful techniques on polytope volume computations to evaluate costs precisely. The approach can be seen as a cross-fertilization between techniques developed within the FORTRAN parallelization and skeleton communities. Compilation d'un langage patrons paralllles avec analyse de coot symbolique et distribution automatique des donnnes RRsumm : Nous prrsentons un langage patrons dont l'impllmentation sur les machines MIMD est portable et a un coot prrdictible. Le processus de compilation est ddcrit par une suite de transformations de programmes. Nous nous concentrons, dans ce rapport, sur l''tape du choix de la meilleure distribution des donnnes. Le choix automatique de l'allocation des vecteurs d'entrre sur les processeurs s'appuye sur une valuation du coot symbolique. Les restrictions du langage source permettent d'utiliser des techniques classiques et puissantes, basses sur les polytopes pour valuer prrcissment le coot. Notre approche peut tre vue comme un exemple de fertilisa-tion croisse entre les techniques ddveloppes dans le domaine de la parallllisation FORTRAN et celles ddveloppes dans le domaine des langages patrons.
منابع مشابه
Compilation of a specialized functional language for massively parallel computers
We propose a parallel specialized language that ensures portable and costpredictable implementations on parallel computers. The language is basically a rst-order, recursion-less, strict functional language equipped with a collection of higher-order functions or skeletons. These skeletons apply on (nested) vectors and can be grouped in four classes: computation, reorganization, communication, an...
متن کاملA Framework for Integrating Data Alignment, Distribution, and Redistribution in Distributed Memory Multiprocessors
ÐParallel architectures with physically distributed memory provide a cost-effective scalability to solve many large scale scientific problems. However, these systems are very difficult to program and tune. In these systems, the choice of a good data mapping and parallelization strategy can dramatically improve the efficiency of the resulting program. In this paper, we present a framework for au...
متن کاملEden - Parallel Functional Programming with Haskell
Eden is a parallel functional programming language which extends Haskell with constructs for the definition and instantiation of parallel processes. Processes evaluate function applications remotely in parallel. The programmer has control over process granularity, data distribution, communication topology, and evaluation site, but need not manage synchronisation and data exchange between proces...
متن کاملTowards Automatic Support of Parallel Sparse
In this paper, we present a generic matrix class in Java and a runtime environment with continuous compilations aiming to support automatic parallelization of sparse computations on distributed environments. Our package comes with a collection of matrix classes including operators of dense matrix, sparse matrix, and parallel matrix on distributed memory environments. In our environment, a progr...
متن کاملA Scheme for Nesting Algorithmic Skeletons
A scheme for arbitrary nesting of algorithmic skeletons is explained which is based on the idea of groups in MPI. The scheme is part of a semi-automatic compilation system which generates parallel code for nested HOFs. Two skeletons were developed which run in a nested mode: a binary divide and conquer and a process farm for a parallel implementation of fold and map HOFs respectively. Examples ...
متن کامل